package com.gxa.community.core.pojo.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Null;

/**
 *
 * @author juran
 * @since 2022-07-19
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@Accessors(chain = true)
@TableName("operate_ticket")
@ApiModel(value = "OperateTicket对象", description = "优惠券信息表")
public class OperateTicket implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty("自增id")
      @TableId(value = "id", type = IdType.AUTO)
    @Null
    private Integer id;

    @ApiModelProperty("优惠券编号")
    @NotBlank
    private String ticketNo;

    @ApiModelProperty("优惠券名称")
    private String name;

    @ApiModelProperty("优惠券类型/1-全场优惠券/2-注册赠卷/3-购物赠卷")
    private Integer type;

    @ApiModelProperty("使用商品/1-全品类商品/2-指定商品/3-指定分类(*)")
    private Integer useType;

    @ApiModelProperty("总发行量")
    private Integer num;

    @ApiModelProperty("面值")
    private Double price;

    @ApiModelProperty("限领数量	")
    private Integer stint;

    @ApiModelProperty("使用门槛/1-无限制/2-满减")
    private Integer useStint;

    @ApiModelProperty("满减价格")
    private Double fullPrice;

    @ApiModelProperty("开始时间")
    private Long startTime;

    @ApiModelProperty("结束时间")
    private Long endTime;

    @ApiModelProperty("备注")
    private String remark;

    @ApiModelProperty("使用门槛")
    private String useThreshold;

    @ApiModelProperty("状态(0-未过期/1-已过期)")
    private Integer status;

}
